//package com.fuchuang.seckillsystem.utils;
//
//import com.alibaba.fastjson.JSON;
//import com.fuchuang.seckillsystem.exception.GlobalException;
//import com.fuchuang.seckillsystem.vo.RespBeanEnum;
//import com.qiniu.http.Response;
//import com.qiniu.storage.Configuration;
//import com.qiniu.storage.Region;
//import com.qiniu.storage.UploadManager;
//import com.qiniu.storage.model.DefaultPutRet;
//import com.qiniu.util.Auth;
//import lombok.Data;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.stereotype.Component;
//import org.springframework.web.multipart.MultipartFile;
//
//@Data
//@Component
//public class QiniuUtils {
//
//    @Value("${qiniu.url}")
//    public String url;
//
//    @Value("${qiniu.accessKey}")
//    private String accessKey;
//
//    @Value(("${qiniu.accessSecretKey}"))
//    private String accessSecretKey;
//
//    public String upload(MultipartFile file, String fileName) {
//        //构造一个带指定 Region 对象的配置类
//        Configuration cfg = new Configuration(Region.huanan());
//        //...其他参数参考类注释
//        UploadManager uploadManager = new UploadManager(cfg);
//        //...生成上传凭证，然后准备上传
//        String bucket = "fc-seckill";
//        //默认不指定key的情况下，以文件内容的hash值作为文件名
//        try {
//            byte[] uploadBytes = file.getBytes();
//            Auth auth = Auth.create(accessKey, accessSecretKey);
//            String upToken = auth.uploadToken(bucket);
//            Response response = uploadManager.put(uploadBytes, fileName, upToken);
//            //解析上传成功的结果
//            DefaultPutRet putRet = JSON.parseObject(response.bodyString(), DefaultPutRet.class);
//            return putRet.key;
//        } catch (Exception ex) {
//            throw new GlobalException(RespBeanEnum.GOODS_PICTURE_UPLOAD_ERROR);
//        }
//    }
//}
